package com.lazily.static_;


/**
 * @Author:  GZQ
 * @date:  2025/1/12 23:24
 * @description: 类变量和类方法的练习3
 */

public class StaticExercise03 {

    public static void main(String[] args) {
        Person1.setTotalPerson1(3);
        //最后 total 的值就是 4
        new Person1();
        Person1.m();
    }
}

class Person1 {

    private int id;
    private static int total = 0;

    public Person1() { // 构造器
       total++;
       id = total;
    }

    public static void setTotalPerson1(int total) {
        // this.total = total; //错误，因为在 static 方法中，不可以使用 this 关键字
        Person1.total = total;
    }

    // 编写一个方法，返回 total 的值
    public static void m() {
        System.out.println("total的值是= " + total);
    }
}


// 小结：记住两句话 (1) 静态方法，只能访问静态成员 (2) 非静态方法，可以访问所有的成员
// (3) 在编写代码时，仍然要遵守访问权限规则